RAIS  3.2
C:/Projekte/RAIS/Specific Masks/Dynamic Masks/SingleRowMask.aspx.cs
Go to the documentation of this file.
00001 
00028 using System;
00029 using System.Data;
00030 using System.Configuration;
00031 using System.Collections;
00032 using System.Collections.Generic;
00033 using System.Web;
00034 using System.Web.Security;
00035 using System.Web.UI;
00036 using System.Web.UI.WebControls;
00037 using System.Web.UI.WebControls.WebParts;
00038 using System.Web.UI.HtmlControls;
00039 
00040 using RAIS.Common.DynamicMaskManagement;
00041 using RAIS.Common.TableManagement;
00042 using RAIS.Common.UserManagement;
00043 using RAIS.UI.Common;
00044 using RAIS.UI.SpecificMasks.Controls;
00045 
00046 namespace RAIS.UI.SpecificMasks.Dynamic_Masks
00047 {
00051     public partial class SingleRowMask : System.Web.UI.Page
00052     {
00053                 //*********************************************************************
00054                 #region Fields
00055 
00058         DynamicMaskData dynamicMaskData;
00059                 #endregion
00060                 //*********************************************************************
00061                 #region Properties
00062 
00065                 protected int MaskID
00066                 {
00067                         get
00068                         {
00069                                 return (Request[Constants.MASK_ID_PARAMETER_NAME] == null) 
00070                                         ? 0 
00071                                         : int.Parse(Request[Constants.MASK_ID_PARAMETER_NAME]);
00072                         }
00073                 }
00077                 protected int TabID
00078                 {
00079                         get
00080                         {
00081                                 return (Request[Constants.TAB_ID_PARAMETER_NAME] == null) 
00082                                         ? 0
00083                                         : int.Parse(Request[Constants.TAB_ID_PARAMETER_NAME]);
00084                         }
00085                 }
00089         protected int ParentID
00090         {
00091             get
00092             {
00093                 return (Request[Constants.PARENT_ID_PARAMETER_NAME] == null)
00094                     ? 0
00095                     : int.Parse(Request[Constants.PARENT_ID_PARAMETER_NAME]);
00096             }
00097         }
00101         protected int RowID
00102         {
00103             get
00104             {
00105                                 return (Request[Constants.ROW_ID_PARAMETER_NAME] == null) 
00106                                         ? 0
00107                                         : int.Parse(Request[Constants.ROW_ID_PARAMETER_NAME]);
00108                         }
00109         }
00113                 protected bool IsAddRow
00114                 {
00115                         get
00116                         {
00117                                 return (Request[Constants.ADD_ROW_FORM_MODE_PARAMETER_NAME] == "True")
00118                                         ? true
00119                                         : false;
00120                         }
00121                 }
00125                 protected bool IsNewRow
00126                 {
00127                         get
00128                         {
00129                                 return (this.CurrentFormMode == DynamicMaskManagement.FormMode.Add);
00130                         }
00131                 }
00135                 protected string SuccessMessage
00136                 {
00137                         get 
00138                         {
00139                                 if (this.Session[UI.Common.Constants.SUCCESS_MESSAGE_TAG] == null)
00140                                         return string.Empty;
00141                                 else
00142                                         return this.Session[UI.Common.Constants.SUCCESS_MESSAGE_TAG].ToString(); 
00143                         }
00144                         set { this.Session[UI.Common.Constants.SUCCESS_MESSAGE_TAG] = value; }
00145                 }
00149         protected DynamicMaskData DynamicMaskData
00150         {
00151             get { return this.dynamicMaskData; }
00152             set { this.dynamicMaskData = value; }
00153         }
00157         protected DynamicMaskManagement.FormMode CurrentFormMode
00158                 {
00159                         get
00160                         {
00161                                 return (DynamicMaskManagement.FormMode)(ViewState[Constants.CURRENT_FORM_MODE_TAG]);
00162                         }
00163                         set
00164                         {
00165                                 ViewState.Add(Constants.CURRENT_FORM_MODE_TAG, value);
00166                         }
00167                 }
00171                 protected UserData CurrentUser
00172                 {
00173                         get { return (UserData)this.Session[UI.Common.Constants.CURRENT_USER_TAG]; }
00174                 }
00178                 protected Facility SelectedFacility
00179                 {
00180                         get { return (Facility)this.Session[UI.Common.Constants.SELECTED_FACILITY_TAG]; }
00181                         set { this.Session[UI.Common.Constants.SELECTED_FACILITY_TAG] = value; }
00182                 }
00186                 protected Department SelectedDepartment
00187                 {
00188                         get { return (Department)this.Session[UI.Common.Constants.SELECTED_DEPARTMENT_TAG]; }
00189                         set { this.Session[UI.Common.Constants.SELECTED_DEPARTMENT_TAG] = value; }
00190                 }
00194                 protected Dictionary<int, int> FiltersValues
00195                 {
00196                         get
00197                         {
00198                                 if (this.Session[UI.Common.Constants.FILTERS_VALUES_TAG] == null)
00199                                         return null;
00200                                 else
00201                                         return (Dictionary<int, int>)this.Session[UI.Common.Constants.FILTERS_VALUES_TAG];
00202                         }
00203                         set { this.Session[UI.Common.Constants.FILTERS_VALUES_TAG] = value; }
00204                 }
00208                 int ValidationMessageID
00209                 {
00210                         set { this.Session[UI.Common.Constants.VALIDATION_MESSAGE_ID_TAG] = value; }
00211                 }
00212                 #endregion
00213                 //*********************************************************************
00214                 #region Event handlers
00215         protected void Page_PreLoad(object sender, EventArgs e)
00216         {
00217             RAIS.UI.Common.PageManagement.TrimTextBoxValues(this);
00218         }
00225         protected void Page_Load(object sender, EventArgs e)
00226         {
00227                         this.Response.Cache.SetNoStore();
00228                         if (this.CurrentUser == null)
00229                                 UI.Common.AccessManagement.SignOut(this);
00230 
00231                         this.HDNConsistencyCheckResult.Value = string.Empty;
00232 
00233             // Set Current Mode
00234                         if (!IsPostBack)
00235                         {
00236                                 if (this.IsAddRow)
00237                                         this.CurrentFormMode = DynamicMaskManagement.FormMode.Add;
00238                                 else
00239                                         this.CurrentFormMode = DynamicMaskManagement.FormMode.View;
00240 
00241                                 if (!string.IsNullOrEmpty(this.SuccessMessage))
00242                                 {
00243                                         RAIS.UI.Common.MessageDisplay.DisplayReturnMessage(this.LBLresult,
00244                                                                                                                                                         this.SuccessMessage,
00245                                                                                                                                                         true);
00246                                         this.SuccessMessage = string.Empty;
00247                                 }
00248 //                this.LBTNmessagebox.Visible = !(this.CurrentUser.FunctionalRole.Type == FunctionRole.FunctionRoleType.Guest);
00249                         }
00250                         else
00251                         {
00252                                 this.LBLresult.Text = string.Empty;
00253                         }
00254 
00255                         // Get DynamicMaskData
00256                         this.dynamicMaskData = DynamicMaskManagement.GetDynamicMaskData(
00257                                 this.MaskID, this.TabID, this.ParentID, this.CurrentUser, this.IsNewRow);
00258 
00259                         UI.Common.DynamicMaskManagement.SetPreselectedFilter(this.dynamicMaskData, this.SelectedFacility, this.SelectedDepartment);
00260                         UI.Common.DynamicMaskManagement.SetPreselectedFilterText(this.dynamicMaskData, this.LBLselectedFacilityNameNoTranslation, this.LBLselectedDepartmentNameNoTranslation);
00261 
00262                         // Add Links
00263                         UI.Common.DynamicMaskManagement.AddFormLinksControls(this.LGDFormLinks, this.dynamicMaskData, this.CurrentFormMode, this.Anchor_OnClick);
00264 
00265                         // Get Current Row Fields Values
00266                         this.dynamicMaskData.CurrentRowValues = UI.Common.DynamicMaskManagement.GetCurrentRowFieldsValues(this.dynamicMaskData, this.ParentID
00267                                 , (this.CurrentFormMode == DynamicMaskManagement.FormMode.Add) ? 0 : this.RowID);
00268 
00269                         // Create New Record in Add mode
00270                         if (this.CurrentFormMode == DynamicMaskManagement.FormMode.Add)
00271                         {
00272                                 UI.Common.DynamicMaskManagement.CreateNewRecord(this.dynamicMaskData);
00273                                 if (!IsPostBack)
00274                                 {
00275                     string returnMessage = "";
00276                                         UI.Common.DynamicMaskManagement.SetFacilityFieldPreselectedValue(this.dynamicMaskData);
00277                     UI.Common.DynamicMaskManagement.GetLookupValues(this.dynamicMaskData, ref returnMessage);
00278                                         UI.Common.DynamicMaskManagement.SetDepartmentFieldPreselectedValue(this.dynamicMaskData);
00279                                 }
00280                         }
00281 
00282                         // Add Field Controlls
00283                         DynamicMaskControlsManagement.AddFieldControls(this.TBLfieldsValues, this.dynamicMaskData.CurrentRowValues, 1, this.DDLWithChild_OnSelectedIndexChanged);
00284 
00285                         if (!IsPostBack)
00286             {
00287                                 this.DataBind();
00288                                 this.LBLusernameNoTranslation.Text = this.CurrentUser.Name;
00289 
00290                                 DynamicMaskControlsManagement.InitializeFieldControls(this.TBLfieldsValues, this.dynamicMaskData.CurrentRowValues);
00291                                 if (this.CurrentFormMode == DynamicMaskManagement.FormMode.Add)
00292                                 {
00293                                         DynamicMaskControlsManagement.SetSinglelookupFieldsPreselectedValues(this.TBLfieldsValues, this.dynamicMaskData, this.FiltersValues);
00294                                         // Make one more cycle of lookup fields initialization for child DDLs
00295                                         DynamicMaskControlsManagement.InitializeObjectFromControlsValues(this.TBLfieldsValues, this.dynamicMaskData);
00296                                         foreach (FieldData fieldData in this.dynamicMaskData.CurrentRowValues)
00297                                         {
00298                                                 if (fieldData.Field.Type == Field.FieldType.SingleLookup)
00299                                                         fieldData.RaisedPostback = true;
00300                                         }
00301                     string returnMessage = "";
00302                     UI.Common.DynamicMaskManagement.GetLookupValues(this.dynamicMaskData, ref  returnMessage);
00303                                         DynamicMaskControlsManagement.InitializeFieldControls(this.TBLfieldsValues, this.dynamicMaskData.CurrentRowValues);
00304                                         DynamicMaskControlsManagement.SetSinglelookupFieldsPreselectedValues(this.TBLfieldsValues, this.dynamicMaskData, this.FiltersValues);
00305                                         DynamicMaskControlsManagement.SetMultilookupFieldsPreselectedValues(this.TBLfieldsValues, this.dynamicMaskData, this.FiltersValues);
00306                                 }
00307                                 UI.Common.PageManagement.InitializePage(this, this.TreeView1);
00308                                 
00309                                 this.SetControlsProperties();
00310                         }
00311 
00312                         if (dynamicMaskData.Protector != null)
00313                         {
00314                 this.BTNedit.Attributes.Add("onclick", string.Format("javascript: return confirm('{0}');", dynamicMaskData.Protector.RenameMessage.Replace("'", "\\'")));
00315                 this.BTNdelete.Attributes.Add("onclick", string.Format("javascript: alert('{0}'); return false;", dynamicMaskData.Protector.DeleteMessage.Replace("'", "\\'")));
00316                         }
00317                         else
00318                         {
00319                                 this.BTNedit.Attributes.Remove("onclick");
00320                 this.BTNdelete.Attributes.Add("onclick", string.Format("javascript: return confirm('{0}');", RAIS.Common.Messages.DELETE_QUESTION.Replace("'", "\\'")));
00321                         }
00322             UI.Common.PageManagement.InitHelpMainMenu(LBTNdefault, dynamicMaskData.DynamicMask.ID);
00323                 }
00324         protected void Page_Init(object sender, EventArgs e)
00325         {
00326            PageManagement.SetScrolableListBox(null, this, true);
00327         }
00334         protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e)
00335         {
00336             UI.Common.UserManagement.ProcessTreeViewOnRedirect(this.TreeView1);
00337         }
00344                 protected void BTNbacktolist_Click(object sender, EventArgs e)
00345                 {
00346                         Response.Redirect(
00347                                 UI.Common.DynamicMaskManagement.GetDynamicMaskMainReference(this.dynamicMaskData, this.MaskID));
00348                 }
00355         protected void BTNadd_Click(object sender, EventArgs e)
00356         {
00357                         int parentID = (this.TabID == 1) ? 0 : this.ParentID;
00358                         Response.Redirect(
00359                                 UI.Common.DynamicMaskManagement.GetDynamicMaskReference(this.dynamicMaskData, this.MaskID, this.TabID, parentID, 0, true));
00360                         //this.CurrentFormMode = DynamicMaskManagement.FormMode.Add;
00361 
00362                         //UI.Common.DynamicMaskManagement.CreateNewRecord(dynamicMaskData);
00363                         //UI.Common.DynamicMaskManagement.SetFacilityFieldPreselectedValue(this.dynamicMaskData);
00364                         //UI.Common.DynamicMaskManagement.GetLookupValues(dynamicMaskData);
00365                         //UI.Common.DynamicMaskManagement.SetDepartmentFieldPreselectedValue(this.dynamicMaskData);
00366                         //DynamicMaskControlsManagement.InitializeFieldControls(this.TBLfieldsValues, this.dynamicMaskData.CurrentRowValues);
00367 
00368                         //this.SetAddFormMode();
00369                 
00370                         //UI.Common.DynamicMaskManagement.AddFormLinksControls(this.LGDFormLinks, this.dynamicMaskData, this.CurrentFormMode, this.Anchor_OnClick);
00371                 }
00378         protected void BTNedit_Click(object sender, EventArgs e)
00379         {
00380             string returnMessage = "";
00381             UI.Common.DynamicMaskManagement.GetLookupValues(this.dynamicMaskData, ref  returnMessage);
00382                         DynamicMaskControlsManagement.InitializeFieldControls(this.TBLfieldsValues, this.dynamicMaskData.CurrentRowValues);
00383 
00384             this.CurrentFormMode = DynamicMaskManagement.FormMode.Edit;
00385                         this.SetControlsProperties();
00386                         
00387                         UI.Common.DynamicMaskManagement.AddFormLinksControls(this.LGDFormLinks, this.dynamicMaskData, this.CurrentFormMode, this.Anchor_OnClick);
00388             UI.Common.Localisation.TranslatePage(this);
00389                 }
00396         protected void BTNdelete_Click(object sender, EventArgs e)
00397         {
00398                         string actionMessage = "";
00399                         bool success;
00400 
00401                         this.CurrentFormMode = DynamicMaskManagement.FormMode.Delete;
00402 
00403                         if (dynamicMaskData.NeedsValidation)
00404                         {
00405                                 RAIS.Common.MessageManagement.Message.ModificationType mainMaskModificationType = (this.IsAddRow)
00406                                         ? RAIS.Common.MessageManagement.Message.ModificationType.Add
00407                                         : RAIS.Common.MessageManagement.Message.ModificationType.Edit;
00408                                 success = UI.Common.DynamicMaskManagement.SaveChanges(this.dynamicMaskData
00409                                         , RAIS.Common.MessageManagement.Message.ModificationType.Delete
00410                                         , mainMaskModificationType
00411                                         , ref actionMessage);
00412                         }
00413                         else
00414                         {
00415                                 success = UI.Common.DynamicMaskManagement.DeleteRecord(this.dynamicMaskData, ref actionMessage);
00416                         }
00417                         RAIS.UI.Common.MessageDisplay.DisplayReturnMessage(this.LBLresult,
00418                                                                                                                                         actionMessage,
00419                                                                                                                                         success);
00420 
00421                         this.dynamicMaskData.CurrentRowValues = UI.Common.DynamicMaskManagement.GetCurrentRowFieldsValues(this.dynamicMaskData, this.ParentID, (this.CurrentFormMode == DynamicMaskManagement.FormMode.Add) ? 0 : this.RowID);
00422                         DynamicMaskControlsManagement.InitializeFieldControls(this.TBLfieldsValues, this.dynamicMaskData.CurrentRowValues);
00423                         this.SetViewFormMode();
00424             UI.Common.Localisation.TranslatePage(this);
00425         }
00432         protected void BTNundo_Click(object sender, EventArgs e)
00433         {
00434                         if (this.IsAddRow && this.dynamicMaskData.DynamicMasks.Count > 1)
00435                         {
00436                                 this.Response.Redirect(
00437                                         UI.Common.DynamicMaskManagement.GetDynamicMaskMainReference(
00438                                                 this.dynamicMaskData, this.MaskID));
00439                         }
00440                         else
00441                         {
00442                                 this.dynamicMaskData.CurrentRowValues = UI.Common.DynamicMaskManagement.GetCurrentRowFieldsValues(this.dynamicMaskData, this.ParentID, this.RowID);
00443                                 DynamicMaskControlsManagement.InitializeFieldControls(this.TBLfieldsValues, this.dynamicMaskData.CurrentRowValues);
00444                                 this.SetViewFormMode();
00445                                 UI.Common.DynamicMaskManagement.AddFormLinksControls(this.LGDFormLinks, this.dynamicMaskData, this.CurrentFormMode, this.Anchor_OnClick);
00446                         }
00447             UI.Common.Localisation.TranslatePage(this);
00448         }
00455         protected void BTNapply_Click(object sender, EventArgs e)
00456         {
00457                         if (this.IsValid)
00458                         {
00459                                 string actionMessage = string.Empty;
00460                                 bool success;
00461 
00462                                 //this.CurrentFormMode = DynamicMaskManagement.FormMode.View;
00463                                 DynamicMaskControlsManagement.InitializeObjectFromControlsValues(this.TBLfieldsValues, this.dynamicMaskData);
00464 
00465                 if (CurrentUser.Type.Type == UserData.UserType.Licensee && this.dynamicMaskData.DynamicMask.Name == "Radiation Events Details")
00466                     this.dynamicMaskData.CurrentRowValues[7].CurrentLookupValue = CurrentUser.Facility.ID;
00467 
00468                                 RAIS.Common.MessageManagement.Message.ModificationType currentModificationType = (this.CurrentFormMode == DynamicMaskManagement.FormMode.Add)
00469                                         ? RAIS.Common.MessageManagement.Message.ModificationType.Add
00470                                         : RAIS.Common.MessageManagement.Message.ModificationType.Edit;
00471                                 RAIS.Common.MessageManagement.Message.ModificationType mainMaskModificationType = (this.IsAddRow)
00472                                         ? RAIS.Common.MessageManagement.Message.ModificationType.Add
00473                                         : RAIS.Common.MessageManagement.Message.ModificationType.Edit;
00474 
00475                                 if (HDNApplyPhase.Value == RAIS.UI.Common.DynamicMaskManagement.ApplyPhase.Check.ToString())
00476                                 {
00477                                         success = UI.Common.DynamicMaskManagement.ValidateConsistencyChecks(this.dynamicMaskData, ref actionMessage);
00478                                         if (success)
00479                                         {
00480                                                 HDNApplyPhase.Value = RAIS.UI.Common.DynamicMaskManagement.ApplyPhase.Apply.ToString();
00481                                         }
00482                                         else
00483                                         {
00484                                                 this.HDNConsistencyCheckResult.Value = string.Format(RAIS.Common.Messages.CONSISTENCY_CHECK, actionMessage);
00485                                         }
00486                                 }
00487 
00488                                 if (HDNApplyPhase.Value == RAIS.UI.Common.DynamicMaskManagement.ApplyPhase.Apply.ToString())
00489                                 {
00490                                         HDNApplyPhase.Value = RAIS.UI.Common.DynamicMaskManagement.ApplyPhase.Check.ToString();
00491 
00492                                         if (!(this.dynamicMaskData.IsNextMaskHistory
00493                                                 && (this.CurrentFormMode == DynamicMaskManagement.FormMode.Add)))
00494                                         {
00495                                                 success = UI.Common.DynamicMaskManagement.SaveChanges(this.dynamicMaskData, currentModificationType, mainMaskModificationType, ref actionMessage);
00496                                                 RAIS.UI.Common.MessageDisplay.DisplayReturnMessage(this.LBLresult,
00497                                                                                                                                                                 actionMessage,
00498                                                                                                                                                                 success);
00499                                         }
00500                                         else
00501                                         {
00502                                                 success = true;
00503                                                 this.Session["CurrentRowValues"] = this.dynamicMaskData.CurrentRowValues;
00504                                         }
00505 
00506                                         if (success)
00507                                         {
00508                                                 if (!this.IsAddRow)
00509                                                 {
00510                                                         this.SetViewFormMode();
00511                                                         UI.Common.DynamicMaskManagement.AddFormLinksControls(this.LGDFormLinks, this.dynamicMaskData, this.CurrentFormMode, this.Anchor_OnClick);
00512                                                 }
00513                                                 else
00514                                                 {
00515                                                         string reference = string.Empty;
00516                                                         if (this.dynamicMaskData.IsNextMaskHistory
00517                                                                 && this.TabID < this.dynamicMaskData.DynamicMasks.Count - 1)
00518                                                         {
00519                                                                 // Saves the validation message ID in session
00520                                                                 this.ValidationMessageID = dynamicMaskData.ValidationMessageID;
00521 
00522                                                                 reference = UI.Common.DynamicMaskManagement.GetDynamicMaskReference(
00523                                                                         this.dynamicMaskData, this.MaskID, this.TabID + 1, this.DynamicMaskData.ParentID, 0, this.IsAddRow);
00524                                                         }
00525                                                         else
00526                                                         {
00527                                                                 this.SuccessMessage = actionMessage;
00528                                                                 int rowID = (this.TabID == 1) ? this.DynamicMaskData.ParentID : 0;
00529                                                                 reference = UI.Common.DynamicMaskManagement.GetDynamicMaskReference(
00530                                                                         this.dynamicMaskData, this.MaskID, this.TabID, this.DynamicMaskData.ParentID, rowID, false);
00531                                                         }
00532                                                         this.Response.Redirect(reference);
00533                                                 }
00534                                         }
00535                                         else
00536                                         {
00537                                                 this.SetFocus(this.TBLfieldsValues);
00538                                         }
00539                                 }
00540                         }
00541             UI.Common.Localisation.TranslatePage(this);
00542                 }
00549                 protected void BTNviewLog_Click(object sender, EventArgs e)
00550                 {
00551                         Log_file logFile = new Log_file();
00552             logFile.ShowHistory(this.dynamicMaskData, this);
00553                 }
00560         protected void LBTNlogout_Click(object sender, EventArgs e)
00561         {
00562             UI.Common.AccessManagement.SignOut(this);
00563         }
00570                 protected void DDLWithChild_OnSelectedIndexChanged(object sender, EventArgs e)
00571                 {
00572                         foreach (FieldData fieldData in this.dynamicMaskData.CurrentRowValues)
00573                         {
00574                                 if (fieldData.ControlName == ((DropDownList)sender).ID)
00575                                 {
00576                                         fieldData.RaisedPostback = true;
00577                                         break;
00578                                 }
00579                         }
00580             string returnMessage = "";
00581                         DynamicMaskControlsManagement.InitializeObjectFromControlsValues(this.TBLfieldsValues, this.dynamicMaskData);
00582             UI.Common.DynamicMaskManagement.GetLookupValues(this.dynamicMaskData, ref  returnMessage);
00583                         DynamicMaskControlsManagement.InitializeFieldControls(this.TBLfieldsValues, this.dynamicMaskData.CurrentRowValues);
00584             UI.Common.Localisation.TranslatePage(this);
00585                 }
00592                 protected void Anchor_OnClick(object sender, EventArgs e)
00593                 {
00594                         Response.Redirect(
00595                                 UI.Common.DynamicMaskManagement.GetDynamicMaskReference(
00596                                           this.dynamicMaskData
00597                                         , sender
00598                                         , this.MaskID
00599                                         , this.ParentID
00600                                         , 0
00601                                         , this.IsAddRow));
00602                 }
00603 
00604                 protected void LBclearfacility_Click(object sender, EventArgs e)
00605                 {
00606                         this.SelectedFacility = null;
00607                         this.SelectedDepartment = null;
00608                         UI.Common.DynamicMaskManagement.SetPreselectedFilter(this.dynamicMaskData, this.SelectedFacility, this.SelectedDepartment);
00609                         UI.Common.DynamicMaskManagement.SetPreselectedFilterText(this.dynamicMaskData, this.LBLselectedFacilityNameNoTranslation, this.LBLselectedDepartmentNameNoTranslation);
00610                         this.SetControlsProperties();
00611                 }
00612 
00613                 protected void LBcleardepartment_Click(object sender, EventArgs e)
00614                 {
00615                         this.SelectedDepartment = null;
00616                         UI.Common.DynamicMaskManagement.SetPreselectedFilter(this.dynamicMaskData, this.SelectedFacility, this.SelectedDepartment);
00617                         UI.Common.DynamicMaskManagement.SetPreselectedFilterText(this.dynamicMaskData, this.LBLselectedFacilityNameNoTranslation, this.LBLselectedDepartmentNameNoTranslation);
00618                         this.SetControlsProperties();
00619                 }
00620                 #endregion
00621         //*********************************************************************
00622         #region Private Methods
00623 
00626         void SetViewFormMode()
00627         {
00628             this.CurrentFormMode = DynamicMaskManagement.FormMode.View;
00629 
00630                         this.SetControlsProperties();
00631         }
00635         void SetAddFormMode()
00636         {
00637             this.CurrentFormMode = DynamicMaskManagement.FormMode.Add;
00638 
00639                         this.SetControlsProperties();
00640         }
00644         void SetControlsProperties()
00645         {
00646                         UserManagement.AccessRight accessRight =
00647                                 UI.Common.DynamicMaskManagement.GetPageAccessRights(this, this.dynamicMaskData, this.MaskID);
00648                         if (accessRight != null)
00649                         {
00650                                 BTNadd.Visible = accessRight.Add;
00651                                 BTNedit.Visible = accessRight.Edit;
00652                                 BTNdelete.Visible = accessRight.Delete;
00653                                 BTNviewLog.Visible = accessRight.Add || accessRight.Edit || accessRight.Delete;
00654                         }
00655 
00656                         LBLselectedFacility.Visible = this.dynamicMaskData.IsMultipaged;
00657                         LBLselectedFacilityNameNoTranslation.Visible = this.dynamicMaskData.IsMultipaged;
00658                         LBclearfacility.Visible = this.dynamicMaskData.IsMultipaged && this.SelectedFacility != null;
00659                         LBLselectedDepartment.Visible = this.dynamicMaskData.IsMultipaged;
00660                         LBLselectedDepartmentNameNoTranslation.Visible = this.dynamicMaskData.IsMultipaged;
00661                         LBcleardepartment.Visible = this.dynamicMaskData.IsMultipaged && this.SelectedDepartment != null;
00662 
00663                         BTNbacktolist.Visible = this.dynamicMaskData.IsMultipaged;
00664 
00665                         if (this.IsAddRow && this.dynamicMaskData.IsNextMaskHistory)
00666                                 BTNapply.Text = UI.Common.Constants.NEXT_BUTTON_TEXT;
00667                         else
00668                                 BTNapply.Text = UI.Common.Constants.APPLY_BUTTON_TEXT;
00669 
00670             UserData currentUser = (UserData)this.Session[UI.Common.Constants.CURRENT_USER_TAG];
00671             if (currentUser != null)
00672                 BTNapply.Text = ApplicationLogicLayer.Localisation.Translate(BTNapply.Text, BTNapply.Page.ToString(), 
00673                     RAIS.Common.Constants.DEFAULT_LANGUAGE, currentUser.Language);
00674             
00675             bool controlsEnabled = false;
00676 
00677                         switch (this.CurrentFormMode)
00678             {
00679                 case DynamicMaskManagement.FormMode.View:
00680                                         this.BTNbacktolist.Enabled = true;
00681                                         this.BTNadd.Enabled = this.dynamicMaskData.PossibleToAddRow;
00682                                         this.BTNedit.Enabled = this.dynamicMaskData.PossibleToEditRow;
00683                                         this.BTNdelete.Enabled = this.dynamicMaskData.PossibleToDeleteRow;
00684                                         this.BTNviewLog.Enabled = this.dynamicMaskData.PossibleToViewLog;
00685                                         this.BTNundo.Enabled = false;
00686                                         this.BTNapply.Enabled = false;
00687 
00688                                         this.TreeView1.Enabled = true;
00689                     this.LBTNadmin.Disabled         = !UI.Common.UserManagement.AccessToCategoryAllowed(RAIS.Common.Constants.CATEGORY_NAME_ADMINISTRATION, this);
00690                     this.LBTNregsys.Disabled        = !UI.Common.UserManagement.AccessToCategoryAllowed(RAIS.Common.Constants.CATEGORY_NAME_REGULATORY_SYSTEM, this);
00691                     this.LBTNinput.Disabled         = !UI.Common.UserManagement.AccessToCategoryAllowed(RAIS.Common.Constants.CATEGORY_NAME_INPUT, this); 
00692                     this.LBTNquery.Disabled         = !UI.Common.UserManagement.AccessToCategoryAllowed(RAIS.Common.Constants.CATEGORY_NAME_QUERY, this); 
00693                     this.LBTNstatistics.Disabled    = !UI.Common.UserManagement.AccessToCategoryAllowed(RAIS.Common.Constants.CATEGORY_NAME_STATISTICS, this); 
00694                     this.LBTNtools.Disabled         = !UI.Common.UserManagement.AccessToCategoryAllowed(RAIS.Common.Constants.CATEGORY_NAME_TOOLS, this);
00695                     this.LBTNmessagebox.Disabled    = false;
00696                     this.LBTNdefault.Disabled       = false;
00697                     this.LBTNlogout.Disabled        = false;
00698 
00699                     break;
00700                 case DynamicMaskManagement.FormMode.Edit:
00701                 case DynamicMaskManagement.FormMode.Add:
00702                                         this.BTNbacktolist.Enabled = false;
00703                                         this.BTNadd.Enabled = false;
00704                                         this.BTNedit.Enabled = false;
00705                                         this.BTNdelete.Enabled = false;
00706                                         this.BTNviewLog.Enabled = false;
00707                                         this.BTNundo.Enabled = true;
00708                                         this.BTNapply.Enabled = true;
00709 
00710                                         this.TreeView1.Enabled = false;
00711                                         this.LBTNadmin.Disabled = true;
00712                                         this.LBTNregsys.Disabled = true;
00713                                         this.LBTNinput.Disabled = true;
00714                                         this.LBTNquery.Disabled = true;
00715                                         this.LBTNstatistics.Disabled = true;
00716                                         this.LBTNtools.Disabled = true;
00717                                         this.LBTNmessagebox.Disabled = true;
00718                                         this.LBTNdefault.Disabled = false;
00719                                         this.LBTNlogout.Disabled = true;
00720 
00721                                         controlsEnabled = true;
00722 
00723                                         Page.SetFocus(this.TBLfieldsValues);
00724                                         break;
00725             }
00726 
00727                         DynamicMaskControlsManagement.SetFieldControlsEnabled(this.TBLfieldsValues, this.dynamicMaskData.CurrentRowValues, controlsEnabled);
00728 
00729             switch ((string)this.Session[UI.Common.Constants.SELECTED_CATEGORY_TAG])
00730             {
00731                 case RAIS.Common.Constants.CATEGORY_NAME_REGULATORY_SYSTEM:
00732                     this.LBLregsys.ForeColor = RAIS.UI.Common.Constants.COLOR_OF_MENU_BAR_TEXT_HIGHLIGHT;
00733                     break;
00734                 case RAIS.Common.Constants.CATEGORY_NAME_INPUT:
00735                     this.LBLinput.ForeColor = RAIS.UI.Common.Constants.COLOR_OF_MENU_BAR_TEXT_HIGHLIGHT;
00736                     break;
00737             }
00738                 }
00739         #endregion
00740     }
00741 }